package uk.co.itmentor.pmff.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
 * Is used to specify a mapped field from a flat file to the class field.
 * @author mdylag
 *
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface FlatFileField {
	/** Name of a field*/
	String name();
	/** Defines a class property where a field name is mapped*/
	String attributeForTag() default "";
	/** Indicates a property where the column number is mapped*/
	String propertyForColumnNumber() default "";
	/** Indicates a property where the row number is mapped*/
	String propertyForRowNumber() default "";
	/** Specifies that field belongs to some group of fields*/
	String fieldGroupName() default "";
	/**Indicates the property where the current fieldGroupName is set */ 
	String propertyForGroupName() default "";
}
